Shared and/or distributed computing environments, including but not limited to cloud computing systems enable the execution of various programs, including servers and virtual machines, sometimes referred to as guests. Guest programs like virtual machines include both applications and data and many shared computing environments rely on a layer, such as a hypervisor, to initiate the guest programs. However, in many environments, by relying on the hypervisor to manage the virtual machines, the hypervisor gains access to both the applications and the data that comprise these machines.
Another issue in computing environments is that a malicious hypervisor operator may clone guest instances, such as virtual servers, at will, examining them, and utilizing the data gleaned from these operations to run cryptographic attacks on the computing environment.